Type-based Dependency Analysis for JavaScript Technical Report
نویسندگان
چکیده
Dependency analysis is a program analysis that determinespotential data flow between program points. While it is not asecurity analysis per se, it is a viable basis for investigatingdata integrity, for ensuring confidentiality, and for guaran-teeing sanitization. A noninterference property can be statedand proved for the dependency analysis.We have designed and implemented a dependency analy-sis for JavaScript. We formalize this analysis as an abstrac-tion of a tainting semantics. We prove the correctness of thetainting semantics, the soundness of the abstraction, a non-interference property, and the termination of the analysis.
منابع مشابه
Interprocedural Type Specialization of JavaScript Programs Without Type Analysis
Previous work proposed lazy basic block versioning, a technique for just-in-time compilation of dynamic languages which we believe represents an interesting point in the design space. Basic block versioning is simple to implement, simple enough that a single developer can build a complete just-in-time compiler for JavaScript in a year, yet it performs surprisingly well as it propagates context-...
متن کاملCause and Effect: Type Systems for Effects and Dependencies
Type systems commonly used in practice today fail to capture essential aspects of program behavior: The effects and dependencies of the programs. In this paper, we examine a prototypical effect type system in the style of Gifford et al., and a canonical example of a dependency type system based upon the work of Zdancewic. Finally, we show how these two type systems can be embedded in a more gen...
متن کاملEMME: a formal tool for ECMAScript Memory Model Evaluation
Nearly all web-based interfaces are written in JavaScript. Given its prevalence, the support for high performance JavaScript code is crucial. The ECMA Technical Committee 39 (TC39) has recently extended the ECMAScript language (i.e., JavaScript) to support shared memory accesses between different threads. The extension is given in terms of a natural language memory model specification. In this ...
متن کاملThe Prediction Dependency on Virtual Social Networks Based on Alexithymia, Attachment Styles, Well-Being Psychological and Loneliness
Introduction: Virtual social networks like others type of addiction can be affected by psychological, developmental, and emotional problems. So, the aim of this research is to The purpose of this study was to investigate prediction dependency on virtual social networks based on alexithymia, attachment styles, well-being psychological and loneliness. The research design was a two-group diagnosti...
متن کاملUsing JavaScript as a Real Programming Language
With the increasing popularity of the World Wide Web, scripting languages and other dynamic languages are currently experiencing a renaissance. A whole new generation of programmers are growing up with languages such as JavaScript, Perl, PHP, Python and Ruby. The attention that dynamic languages are receiving is remarkable, and is something that has not occurred since the early days of personal...
متن کامل